[Salesforce] 項目作成日を一覧で表示する方法
Hola〜皆さんこんにちは!Salesforceのシステム管理者の清水です。
今日は開発者コンソールを利用して、カスタム項目の作成日の一覧を表示する方法を記載したいと思います。
カスタム項目を多数作成
管理者・開発者の方であれば、一度はSalesforceのSandbox環境で検証したことがあると思います。
Sandboxにて検証が終わり動作チェックができたので、作成したカスタム項目などを本番に送信セットを利用してUPもすることがあるかと思います。同じカスタム項目を本番環境で一から作ってもいいとは思いますが、項目の数が多いと手間がかかりますし、数式組んでる項目があればもっと大変ですよね。
そんな時に私が遭遇した事例をお伝えします。
どれを本番環境に送信すればいいのかわからない
標準のSalesforceの画面だと、「項目とリレーション」に項目が並んでいるだけで誰がいつ作成したのかが表示されておりません。リストビューなどのように「作成日」といった項目を並べることもできません。さらに項目の「作成日」はメタデータの扱いになるため、データローダなどを使用した抽出する機能もなく、レポートもメタデータは表示不可です。
私はここ2・3日の間に、大量に10項目以上作成し検証していたので、検証が終わり本番にUPしたくなった際にどれをUPすればいいのか分からなくなりました。
項目を普段は1・2個しか作ることがなかったのでこのケースは初めてでした。本番環境に存在している項目と比較してないものを割り出すなど人力でもできると言えばできます。
ただすぐに一覧で出せた方が社内用のマニュアルにも、どの項目を新規で作成してUPしたかなど記録としてすぐに残せるのでSOQLで抽出してみることにしました。
SOQLで抽出する
ではやってみます。
開発者コンソールを開いて、Query Editor上に以下の内容を書いてExecuteしてみます。
SELECT TableEnumOrId, DeveloperName, CreatedDate, LastModifiedDate, CreatedById FROM CustomField WHERE TableEnumOrId = 'Quote' ORDER BY CreatedDate DESC
出ました! ちゃんと作成日と誰が作成したのかも表示されているため、自分が作成したカスタム項目の作成が容易にこれだとできます。 Executeを行うときに、以下のように「Use tooling API 」にチェックを入れるのを忘れず行ってください。
参考:カスタム項目の作成日をまとめて取得したい - Mark Hammer's Blog
終わりに
めちゃくちゃ小ネタではありますけど、管理者や開発者が作業を行う上で「開発者コンソール」の存在は無視できないくらいの存在な気がしています。
SOQLを利用して、もっと色々な要件でデータの抽出できるようになりたいです。